package Management.c;

//在D盘新建一个Excel表，并插入数据

import org.apache.poi.xssf.usermodel.XSSFCell;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;

public class TestMain2
//
{


        public static void main(String[] args) throws IOException
        /*
        public关键字
        声明主函数为public就是告诉其他的类可以访问这个函数。
static关键字，告知编译器main方法是一个静态方法。
也就是说main方法中的代码是存储在静态存储区（方法区）的
，即当定义了类以后这段代码就已经存在了
只要类被加载后，就可以使用该方法，
不需要通过实例化来访问，可直接通过类名.main()直接访问
void关键字表明main()的返回值是无类型。
main是jvm识别的特殊方法名，是程序的入口方法。
同一个.java文件可以有多个main方法，
但只有与文件名相同的用public修饰的类中的main()方法才能作为整个程序的入口方法
         */
        {
            String path = "D:/a1.xlsx";
            // 文件存不存在
            File file = new File(path);
            FileOutputStream out = new FileOutputStream(file);
            // 工作薄
            XSSFWorkbook wb = null;
            wb = new XSSFWorkbook();
            // 获取第一个sheet页
            XSSFSheet sheet1 = wb.createSheet("瞎起的sheet名");

            // 获取单元格
            XSSFRow row = sheet1.createRow(0);
            XSSFCell cell1 = row.createCell(0);
            XSSFCell cell2 = row.createCell(1);
            cell1.setCellValue("hello");
            cell2.setCellValue("world");
/*
Excel中cell函数是返回某一引用区域的左上角单元格的格式、位置或内容等信息。
cell函数的语法为：CELL(info_type,reference)
cell函数第二参数表示要获取其有关信息的单元格。
如果忽略，则在 info_type 中所指定的信息将返回给最后更改的单元格。

"address" 引用中第一个单元格的引用，文本类型。

"col" 引用中单元格的列标。
"color" 如果单元格中的负值以不同颜色显示，则为 1，否则返回 0。

"contents" 引用中左上角单元格的值：不是公式。

"filename" 包含引用的文件名(包括全部路径)，文本类型。
如果包含目标引用的工作表尚未保存，则返回空文本 ("")。
"format" 与单元格中不同的数字格式相对应的文本值。
如果单元格中负值以不同颜色显示，
则在返回的文本值的结尾处加“-”；
如果单元格中为正值或所有单元格均加括号
则在文本值的结尾处返回“()”。
"parentheses" 如果单元格中为正值或全部单元格均加括号，则为 1，否则返回 0。
"prefix" 与单元格中不同的“标志前缀”相对应的文本值。
如果单元格文本左对齐，则返回单引号 (')；
如果单元格文本右对齐，则返回双引号 (")；
如果单元格文本居中，则返回插入字符 (^)；
如果单元格文本两端对齐，则返回反斜线 (\)；
如果是其他情况，则返回空文本 ("")。
"protect" 如果单元格没有锁定，则为 0；如果单元格锁定，则为 1。
"row" 引用中单元格的行号。
 */
            wb.write(out); // 文件和  内存wb绑定
            out.close();
            wb.close();
        }
    }


